﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using web_uchet.Security.Enums;

namespace web_uchet.Reports.OLAP
{
    public class Settings
    {

    }
    public class ИзмеренияSettings : Settings
    {
        public Измерения ИзмерениеCol
        { get; set; }
        public Измерения ИзмерениеRow
        { get; set; }
        public ИзмеренияSettings()
        {
             ИзмерениеCol = Измерения.Время;
             ИзмерениеRow = Измерения.Сотрудники;
        }
    }
    public class КлиентыSettings : Settings
    {
        public bool Имя
        {get;set;}
        public bool Описание
        { get; set; }
        public КлиентыSettings()
        {
            this.Имя = true;
            this.Описание = false;
        }
    }
    public class СотрудникиSettings : Settings
    {
        public bool ПолномочияСотрудники
        { get; set; }
        public bool РабочиеМестаСотрудники
        { get; set; }
        public bool Имя
        {get;set;}
        public bool МестоРаботы
        {get;set;}
        public bool ИмяПользователя
        {get;set;}
        public bool Полномочия
        {get;set;}
        public СотрудникиSettings()
        {
            ПолномочияСотрудники = false;
            РабочиеМестаСотрудники = false;
            Имя = true;
            МестоРаботы = false;
            ИмяПользователя = false;
            Полномочия = false;
        }
    }
    public class ВремяSettings : Settings
    {
        public bool Месяц
        {get;set;}
        public bool Год
        {get;set;}
        public bool День
        {get;set;}
        public ВремяSettings()
        {
            Месяц = true;
            Год = false;
            День = false;
        }
    }
    public class РабочиеМестаSettings : Settings
    {
        public bool Название { get; set; }
        public bool ДопИнформация { get; set; }
        public РабочиеМестаSettings()
        {
            Название = true;
            ДопИнформация = false;
        }
    }
    public class ПоказателиSettings : Settings
    {
        public bool Кол_во_Заказов { get; set; }
        public bool Продажи { get; set; }
        public ПоказателиSettings()
        {
            Продажи = true;
            Кол_во_Заказов = false;
        }
    }
    public class OLAPFilters : Settings
    {
        public DateTime? DateStart { get; set; }
        public DateTime? DateEnd { get; set; }
        public int? Колличество_Заказов { get; set; }
        public Условие Колличество_Заказов_Условие { get; set; }
        public int? ИД_Клиента { get; set; }
        public int? ИД_Сотрудника { get; set; }
        public int? ИД_РабочееМесто { get; set; }
        public float? Продажи { get; set; }
        public Условие Продажи_Условие { get; set; }
        //public UserRoleEnum? Полномочия { get; set; }
    }
    public enum Условие
    {
        Равно,Больше,Меньше,
        МеньшеИлиРавно,БольшеИлиРавно
    }
}
